#include "../include/variable.hpp"
#include "../include/q.hpp"
#include <iostream>
#include <string>
#include <vector>

using namespace mt;
using namespace std;

int main(int argc, char** argv) {
  typedef Q<int> t_int;
  Variable<t_int> x0;
  Variable<t_int> x1("x",1);
  Variable<t_int> x2("x",2);
  Variable<t_int> x3("x",3);
  Variable<t_int> x4(x2);
//  string x = x1.getName();
  Q<int> exp0 = x0.getExponent();
  cout << "x1 = " << x0.getName() << "^" << exp0.getNumerator() << endl;
  Q<int> exp1 = x1.getExponent();
  cout << "x1 = " << x1.getName() << "^" << exp1.getNumerator() << endl;
  cout << (x2.isEqual(x4)) << endl;
  cout << (x2.isEqual(x3)) << endl;
//  cout << "x2 = " << x2.getName() << "^" << x2.getExponent() << endl;
//  cout << "x3 = " << x3.getName() << "^" << x3.getExponent() << endl;
  return 0;

}
